/*
 * @Author: LJH003 13179754+ljh003@user.noreply.gitee.com
 * @Date: 2025-05-15 20:49:10
 * @LastEditors: LJH003 13179754+ljh003@user.noreply.gitee.com
 * @LastEditTime: 2025-06-18 21:34:40
 * @FilePath: \ai-assistant-admin\src\api\grading.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
import request from '@/utils/request'

// AI批改结果参数
export interface GradingResult {
  id?: number | string
  assignmentId: number | string // 作业模板ID
  assignmentTitle?: string // 作业标题
  studentId: number | string // 学生ID
  studentName?: string // 学生姓名
  studentAssignmentId: number | string // 学生作业ID
  rawResponse?: string // AI原始响应内容
  score: number // 总分
  accuracy: number // 正确率
  summary?: string // 知识薄弱点总结 （Markdown格式）
  errorAnalysis?: string // 错题解析 （JSON数组）
  createTime?: string
  updateTime?: string
}

// AI批改结果列表查询参数
export interface GradingResultListParams {
  current: number
  pageSize: number
  assignmentId?: number | string
  studentId?: number | string
  startTime?: string
  endTime?: string
}

// 获取AI批改结果列表
export function getGradingResultList(params: GradingResultListParams) {
  return request.post<{
    code: number
    data: {
      total: number
      result: GradingResult[]
    }
    message: string
  }>('/gradingResults/page', params)
}

// 获取AI批改结果详情
export function getGradingResult(id: number | string) {
  return request.get<{
    code: number
    data: GradingResult
    message: string
  }>(`/gradingResults/get/${id}`)
}

// 创建AI批改结果
export function createGradingResult(data: GradingResult) {
  return request.post('/gradingResults/create', data)
}

// 更新AI批改结果
export function updateGradingResult(data: GradingResult) {
  return request.post('/gradingResults/update', data)
}

// 删除AI批改结果
export function deleteGradingResult(id: number | string) {
  return request.delete(`/gradingResults/delete/${id}`)
}